home *** CD-ROM | disk | FTP | other *** search
/ Light ROM 1 / LIGHT-ROM 1 (Amiga Library Services)(1994).iso / ffdisks / d887.lha / ThrowMouse / throwmouse.doc < prev    next >
Text File  |  1993-07-16  |  9KB  |  213 lines

  1. ===================== ThrowMouse 0.7 documentation ========================
  2. ===========================================================================
  3. A  simple  Workbench  tool  to be used  with Kickstart 2.x/3.x,  written by
  4.  Roland 'Gizzy' Mainz,  freeware, all rights reserved.
  5. No guarantee of any kind is made that  the programm described below in this
  6.  document is 100% reliable. You use this material on your own risk.
  7.  
  8.  
  9. =========================== Misc ==========================================
  10. ===========================================================================
  11. I  did  it  every  day.  Monday  till  sunday  I  turned  on  the computer.
  12. And I had to open one, two, three ... drawers.
  13. There must be another way. The Workbench has no REXX port...
  14. Hacks won't work with future OS releases...
  15.  
  16. 'Get the mouse... double-click... once again...'
  17.  
  18. Whoops, there was a light in the darkness. The input.device...
  19. Every user input is passed through this device. And programs are allowed to
  20. send their own input streams.
  21. Throw the mouse away (at first on startup). 'ThrowMouse' was born.
  22. A little tool for replacing the mouse.
  23.  
  24. This release of 'ThrowMouse' may open a couple of specified icons,
  25. on choice with a delay and so on (see below).
  26.  
  27.  
  28. =========================== Installation ==================================
  29. ===========================================================================
  30. Workbench: Drop the 'ThrowMouse' icon in your favorite drawer (like
  31.  Sys:WBStartup/ or Sys:Utilities). Be sure that the tooltype
  32.  DONOTWAIT is set, otherwise the Workbench will call with a requester
  33.  (only WBStartup).
  34.  
  35. CLI/Shell: Drop/Copy the 'ThrowMouse' file in your favorite directory
  36.  (like Sys:Utilities).
  37.  If you like to run the programm at startup, get your favorite editor
  38.  and add this line to S:user-startup (NOT Startup-Sequence !!):
  39.  run >nil: <nil: Sys:Utilities/ThrowMouse <args>
  40.  
  41.  
  42. =============================== Usage =====================================
  43. ===========================================================================
  44. From WB:
  45.   Look at first on the main 'ThrowMouse' icon (with Icons/Information...)
  46.    The only tooltype allowed there is DONOTWAIT.
  47.   Make a copy of this icon with IconEdit, select the menu item
  48.   Type/Project (the icontype is now PROJECT) and now you may select
  49.   the tooltypes of your choice.
  50.  
  51.   RULES and TIPS for WBStartup
  52.     Be sure that the icons in the WBStartup drawer have the STARTPRI=-127
  53.     set because other programs may take much CPU performace and
  54.     'ThrowMouse' won't work correctly.
  55.     You also may set a WAIT=10 (minimum) to let the system settle before
  56.     starting operating.
  57.     Connecting project icons in the WBStartup drawer via NEXTDOBJ is
  58.     not a very good idea because the workbench will execute all of them.
  59.     Multiple 'ThrowMouse' icons in the WBStartup drawer without the
  60.     NEXTDOBJ tooltype are allowed.
  61.  
  62.     example:
  63.       DONOTWAIT
  64.       STARTPRI=-127
  65.       ...
  66.       NEXTDOBJ=sys:wbstartup/throwmouse.nextdobj /* wrong !!
  67.                                                     only one root icon
  68.                                                     in the WBStartup
  69.                                                     drawer */
  70.       NEXTDOBJ=sys:utilities/throwmouse.nextdobj /* right !
  71.                                                     all other project
  72.                                                     icons must be in
  73.                                                     another drawer */
  74.   WARNING
  75.     Loops with NEXTDOBJ are not allowed, you can't stop them and the tool
  76.     will crash.
  77.  
  78. From CLI / Shell:
  79.   ThrowMouse <args>
  80.  
  81. TEMPLATE
  82.   X=LEFT/N,Y=TOP/N,CLICK=CLICKS/N,WAIT=DELAY/N,WIN=WINDOW/K,DOBJ=ICON/K,
  83.   ACTIVATELASTWINDOW=ALW
  84.  
  85.  
  86. VALID TOOLTYPES / SHELL ARGUMENTS
  87.   (The tooltypes in brackets (like DELAY) are not available from
  88.    Workbench yet)
  89.   X             the X coordinate of the pointer's new position
  90.                 (DEFAULT X=0)
  91.   Y             the Y coordinate of the pointer's new position
  92.                 (DEFAULT Y=0)
  93.   CLICK(=CLICKS)the left mousebutton clicks over the target
  94.                 (DEFAULT CLICK=0
  95.   WAIT(=DELAY)  the time delay in seconds to wait before starting
  96.                 the action
  97.   (WIN=)WINDOW  name of an existing window whitch topedge and leftedge
  98.                 are added to the X and Y coordinates
  99.                 The naming of windows is case sensetive, but you need
  100.                 not type the full name;
  101.                 example: <Ram Disk 100% full> --> WIN=Ram
  102.   DOBJ(=ICON)   the icon witch middle coordinates relative to the window's
  103.                 topedge & leftedge are added to the X and Y coordinates
  104.                 YOU MUST SPECIFY THE FULL PATH
  105.   ACTIVATELASTWINDOW(=ALW)
  106.                 when ThrowMouse finishes work with it's source icon,
  107.                 the old activewindow is activated.
  108.   NEXTDOBJ      (Workbech only !!!)
  109.                 The next project icon to pass through 'ThrowMouse'.
  110.                 To connect multiple ThrowMouse project icons to a script
  111.  
  112. EXAMPLE (From CLI / Shell)
  113.   ThrowMouse X=0 Y=0 DELAY=5 WIN=System2.0 DOBJ=sys:tools clicks=2
  114.     /* will open the 'Tools' drawer in the sys: device */
  115.   ThrowMouse X=0 y=0 WIN=AmigaShell
  116.     /* will move the pointer to the window called 'AmigaShell' */
  117.   ThrowMouse X=100 Y=200
  118.     /* will move the pointer to the position X=100 Y=200 */
  119.  
  120.  
  121. SCRIPT EXMAPLE (from Workbench)
  122.   ICON "sys:wbstartup/throwmouse.project.info"
  123.         DONOTWAIT
  124.         STARTPRI=-127
  125.         X=0
  126.         Y=0
  127.         CLICK=2                 /* double click = open drawer... */
  128.         WAIT=20                 /* wait 20 seconds */
  129.         WINDOW=System2.0        /* targed window is "System2.0..."
  130.         DOBJ=System2.0:Tools    /* the dobj filename (without .info) */
  131.         (ACTIVATELASTWINDOW)    /* inactive tooltype */
  132.         NEXTDOBJ=sys:utilities/throwmouse.project2
  133.  
  134.   ICON "sys:utilities/throwmouse.project2.info"
  135.         DONOTWAIT
  136.         X=0
  137.         Y=0
  138.         CLICK=2
  139.         WAIT=5
  140.         WINDOW=System2.0
  141.         DOBJ=System2.0:Utilities
  142.  
  143.  
  144. ================== CALCULATING THE MOUSE POSITION =========================
  145. ===========================================================================
  146. The target position of the mouse may be calculated with this term:
  147.   mouseX = X +                              /* if X is specified */
  148.            window's leftedge +              /* if WINDOW is specified */
  149.            (dobj's leftedge + (dobj's width / 2)) /* if WINDOW and
  150.                                                      DOBJ is specified */
  151.  
  152.   mouseY = Y +                              /* if Y is specified */
  153.            window's topedge +               /*if WINDOW is specified */
  154.            (dobj's topedge + (dobj's height / 2)) /* if WINDOW and
  155.                                                      DOBJ is specified */
  156.  
  157.  
  158.   X                 = the value set with the 'X' tooltype/arg
  159.   Y                 = the value set with the 'Y' tooltype/arg
  160.   window's leftedge = the border coordinates of the window's INNER frame
  161.                       relative to it's screen
  162.   dobj's ...        = the ICON's coordinates relative to it's window
  163.  
  164.  
  165. =============================== TODO ======================================
  166. ===========================================================================
  167. Split up the project in two parts:
  168.   ThrowMouse.commodity with REXX port ...
  169.   ThrowMouse
  170. Repair any current bug
  171. Add some tooltypes like DELAY, ALW...
  172.  
  173.  
  174.  
  175. =========================== Author's Request ==============================
  176. ===========================================================================
  177. By  releasing  this program I do  not  place any obligations on you,
  178. feel free to share this program with your  friends (and enemies).
  179.  
  180. If you want to blame me, report any bugs or want the source,
  181. send your letter to:
  182.                 Roland Mainz
  183.                 Hohenstaufenstraße 8
  184.                 D-5164 Nörvenich
  185.                 GERMANY
  186.  
  187. But, should you feel the need to make any contributions, send them to:
  188.                 Fred Fish
  189.                 Amiga Library Disks
  190.                 1835 East Belmont Drive
  191.                 Tempe, Arizona  85284
  192.                 USA
  193.  
  194. for his great AMIGA library, and his work all over the years.
  195.  
  196.  
  197. The entire  ThrowMouse  package  may  be  noncommercially redistributed,
  198. provided  that  the package  is always  distributed in it's complete  form
  199. (including it's documentation).  A small copy fee  for media costs is okay
  200. but any kind of commercial distribution is strictly forbidden!
  201. Comments  and  suggestions  how  to  improve  this  program  are generally
  202. appreciated!
  203.  
  204. Thanks to Matt Dillon for his DICE, and Olaf 'Olsen' Barthel for his
  205. help, ideas and some text clips from his documentations.
  206.  
  207.  
  208. =========================== footnotes =====================================
  209. ===========================================================================
  210. dobj   short form of Disk OBJect
  211.  
  212.  
  213.